home *** CD-ROM | disk | FTP | other *** search
/ Aminet 33 / Aminet 33 - October 1999.iso / Aminet / docs / misc / amigapl.9811.lzh / amigapl.9811 / text0361.txt < prev    next >
Encoding:
Text File  |  1998-12-01  |  3.0 KB  |  72 lines

  1.      * Subject: Dema Venus Art
  2.    
  3.  
  4. Milek wywolal mnie do tablicy, wiec musze swoje 12 groszy wtracic.
  5. BTW: Co bys powiedzial Milku na stanowisko naszego rzecznika
  6. prasowego? ;)
  7.  
  8. >> Na pewno mówisz o demach grupy venus art. otó¿ one pisane s± w 99% w c
  9. >> (podejrzewam nawet, ¿e w 100%, ale g³owy nie dajê) i raczej kiepsko w
  10. >> nich z optymalizacj± procedur. za to taki koder pisz±cy pod 040/060
  11.  
  12. Chcesz sie zalozyc? Jacek (znany takze jako Noe - autor 90% kodu w naszych
  13. produkcjach) jest jednym z najlepszych programistow jakich znam, a co
  14. najwazniejsze potrafi optymalizowac kod na poziomie algorytmu a nie tylko
  15. liczac cykle poszczegolnych instrukcji.
  16.  
  17. >c) kawa³ki kodu w asmie PPC bêd± szybkie "wyobra¿alnie", poniewa¿ prêdko¶æ
  18. >ich dzia³ania nie odbiega od tej uzyskiwanej przez kod generowany
  19. >kompilatorem. Swego czasu wspomina³ o tym na li¶cie PPC-Dev bodaj¿e Tomek
  20. >Muszyñski, sporo interesuj±cych informacji nt. optymalizacji przez gcc
  21. >móg³by dostarczyæ tak¿e jeden z obecnych na li¶cie cz³onków VA, gdyby tylko
  22. >uda³o mu siê prze³amaæ lenistwo. ;)
  23. To nie przez lenistwo tylko dlatego ze nie bylem zapisany na liste. Zrobilem
  24. to wczoraj, specjalnie coby odpowiedziec na ten list (ale mam zamiar zostac 
  25. przez chwilke )
  26.  
  27.  A co do szybkosci kodu to niech przykladem bedzie innerloop do teksturowania
  28. (nie bede go tu wysylal bo to jest troche lini - jak ktos chce zobaczyc niech
  29. da znac). Jacek przepisywal na assembler taka funkcje:
  30.   do
  31.   {
  32.     *CL++ = T[((u>>8)&0xff00)+((v>>16)&0xff)];
  33.     u += ddu;
  34.     v += ddv;
  35.   }while(xlri--);
  36.  
  37. jakies 3 godziny. Zrobila sie dwa razy szybsza niz to co generowal sas/c
  38. (z wlaczona optymalizacja) natomiast egcs (1.1b z wlaczonym schedulerem 
  39. haifa) zrobil to w kilka sekund i kod wygladal prawie tak samo,tyle ze byl
  40. szybszy!!! A to ze wzgledu na lepszy pipeline'ing instrukcji.
  41.  
  42. Moge tez zaprezentowac wszystkim zainteresowanym c2p w C,ktore sa tak
  43. samo szybkie jak najszybsze Azure'a. Ja napisalem je w 5 minut,ciekaw
  44. jestem ile on sie nad swoimi meczyl ;)
  45.  
  46.  
  47. >Dema na PPC nie s± "a¿ takie szybkie", poniewa¿:
  48. <snip>
  49. ...
  50. <snip>
  51. Do listy Milka dodal bym jeszcze fakt, iz nie ma innej mozliwosci 
  52. wyswietlenia obrazu, jak skorzystanie z systemu. A to oznacza zmiane
  53. kontekstu (double buffering (zarowno na adze jak i na karcie,
  54. jest robiony przy uzyciu systemu (ChangeScreenBuffer() adze i ScrollVPort()
  55. na karcie). Zmiana kontekstu zabiera ogromna ilosc czasu, a to juz nie 
  56. moja wina (na karcie dodatkowo bedzie WritePixelArray() stad spotkalem 
  57. sie tez z zarzutem ze na karcie dziala tylko troche szybciej niz na adze).
  58. Ile znaczy jeden context switching na klatke animacji moze sobie sprawdzic
  59. kazdy posiadacz ppc, odpalajac ktores z naszych dem z wylaczonym double
  60. bufferingiem.
  61.  
  62. A na koniec wiadomosc dla tego Pana, ktory rozpoczal ta dyskusje
  63. (cos ze dema nie zachwycily itd)
  64.   Na satelite 98 pokazalismy nasze ostatnie demo. Teraz zycze milego
  65. oczekiwania na dema na ppc innych grup. Mozesz troche poczekac, bo Ci 
  66. ktorzy maja je zrobic studiuja teraz w pocie czola dokumentacje od 
  67. systemu i czekaja na AsmOne PPC ;) 
  68.  
  69.     Regards
  70.       Sebastian (elf^venus art)
  71.  
  72.  
  73.